// 引入react.js
import React from 'react';
// 引入react-dom.js 文件
import ReactDOM from 'react-dom/client';
// 全局css 文件
// import './index.css';
import App from './App';
// import reportWebVitals from './reportWebVitals';

// 使用react-redux
// 01: 引入react-redux,Provider为一个组件, 使用该组件包裹根组件,这样就实现了store 数据的全局化了
// 该组件有一个属性store ,值为共享的仓库数据 store
import { Provider} from 'react-redux';

// 02: 导入store 仓库, 并且赋值为store属性
// import store from './store'
// import store from './store/index1'

// 导入rtk 定义的 stote仓库 
import store from './store-rtk/index1'

// 在入口文件index.js中 引入BrowserRouter或HashRouter 组件, 然后用该组件包裹根组件
// 这样所有的后代组件中都可以使用该路由了
import { BrowserRouter as Router } from 'react-router-dom'


const root = ReactDOM.createRoot(document.getElementById('root'));

// React.StrictMode 为是否设置该应用为严格模式, 如果设置严格模式,那么如果react中由于版本迭代一些老旧的
// 语法或者被废弃的语法,使用的时候,设置严格模板就是在浏览器的控制台报错, 如果不设置就不报错. 
// 不建议设置. 因为咱们 在使用react的时候,需要使用第三方库文件,而这些文件中可能包含废弃的react 语法,所以建议不使用严格模式


root.render(
    <Provider store={store}>
        <Router>
        <App />
        </Router>
    </Provider>
);


// react 项目目录介绍
// public 项目的公共文件, 一般不需要修改, 里面的文件可以直接通过浏览器访问
    // mainfest.json 项目的描述文件,一般不用动
    // robots.txt 描述 该网站的某一些地址路径是否可以被搜索引擎抓取, 如果设置允许抓取, 一般抓取的是页面的描述内容
    // 网站的描述内容一般设置在 meta 标签 的content 属性上
    // 做网站的SEO 搜索引擎优化的,目的就是为了让搜索引擎获取网站的内容,便于搜索,该文件中定义的协议属于君子协议.
    
// reportWebVitals.js  google 性能优化库文件 ,一般不许要操作,因为国内浏览访问不了google 